/* ---------------------------------------------------------------------------
 * This software is in the public domain, furnished "as is", without technical
 * support, and with no warranty, express or implied, as to its usefulness for
 * any purpose.
 *
 * Parser.h
 *
 * Author: Guillaume Boissé
 * -------------------------------------------------------------------------*/

#ifndef _JSP_PARSER_H
#define _JSP_PARSER_H

#include "Scanner.h"
#include "Types.h"

#include <string>

namespace jsp
{

class Parser
{
public:
    Parser(const s8* pFilename);
    virtual ~Parser();

    error_t parse();

protected:
    Scanner m_scanner;

    std::string m_fileName;
    std::string m_fileContent;

    virtual void onStatement() {}
};

} // namespace jsp

#endif // _JSP_PARSER_H
